home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include <string.h>
-
- #define LF 10
- #define CR 13
-
- void getword(char *word, char *line, char stop) {
- int x = 0,y;
-
- for(x=0;((line[x]) && (line[x] != stop));x++)
- word[x] = line[x];
-
- word[x] = '\0';
- if(line[x]) ++x;
- y=0;
-
- while((line[y++] = line[x++]) != '\0');
- }
-
- char x2c(char *what) {
- register char digit;
-
- digit = (what[0] >= 'A' ? ((what[0] & 0xdf) - 'A')+10 : (what[0] - '0'));
- digit *= 16;
- digit += (what[1] >= 'A' ? ((what[1] & 0xdf) - 'A')+10 : (what[1] - '0'));
- return(digit);
- }
-
- void unescape_url(char *url) {
- register int x,y;
-
- for(x=0,y=0;url[y];++x,++y) {
- if((url[x] = url[y]) == '%') {
- url[x] = x2c(&url[y+1]);
- y+=2;
- }
- }
- url[x] = '\0';
- }
-
-
- void plustospace(char *str) {
- register int x;
-
- for(x=0;str[x];x++) if(str[x] == '+') str[x] = ' ';
- }
-
- int rind(char *s, char c) {
- register int x;
- for(x=strlen(s) - 1;x != -1; x--)
- if(s[x] == c) return x;
- return -1;
- }
-
- int getline(char *s, int n, FILE *f) {
- register int i=0;
-
- while(1) {
- s[i] = (char)fgetc(f);
-
- if(s[i] == CR)
- s[i] = fgetc(f);
-
- if((s[i] == 0x4) || (s[i] == LF) || (i == (n-1))) {
- s[i] = '\0';
- return (feof(f) ? 1 : 0);
- }
- ++i;
- }
- }
-
-
- void send_fd(FILE *f, FILE *fd)
- {
- char c;
-
- while (1) {
- c = fgetc(f);
- if(feof(f))
- return;
- fputc(c,fd);
- }
- }
-